-- *****************************************************************
-- REDSTONE-PPP-MIB
--
-- Redstone Communications Inc. Enterprise MIB
-- PPP MIB
--
-- Copyright 1998-1999 Redstone Communications, Incorporated.
-- All Rights Reserved.
-- *****************************************************************

REDSTONE-PPP-MIB DEFINITIONS ::= BEGIN

IMPORTS
        MODULE-IDENTITY,
        OBJECT-TYPE,
        Integer32,
        Counter32,
        IpAddress,
        TimeTicks
                FROM SNMPv2-SMI

        TruthValue, RowStatus
                FROM SNMPv2-TC

        ifIndex, InterfaceIndex, InterfaceIndexOrZero
                FROM IF-MIB

        rsMgmt
                FROM REDSTONE-SMI

        RsEnable, RsNextIfIndex
                FROM REDSTONE-TC;


rsPppMIB  MODULE-IDENTITY
        LAST-UPDATED "200010050001Z"
        ORGANIZATION "Redstone Communications, Inc."
        CONTACT-INFO
        "
        Redstone Communications, Inc.
                5 Carlisle Road
        Westford MA 01886
        USA
        Tel:    +1-978-692-1999
                Email:  mib@redstonecom.com
        "
        DESCRIPTION
                "The PPP MIB for the 
                Redstone Communications Inc. enterprise."
        REVISION "200010050001Z"
        DESCRIPTION
                "Added rsPppLinkConfigStandardIfIndex object for
                 cross referencing with standard PPP mibs."
        REVISION      "9912310001Z"
        DESCRIPTION
                "Actual date 15-Feb-2000. Added rsPppLinkStatusTunnelIfIndex."
        REVISION      "9912310000Z"
        DESCRIPTION
                "Actual date 02-Feb-2000. Modified Terminate reasons to include
        tunnel-related events."
        REVISION      "9907010000Z"
        DESCRIPTION
                "Additional objects added to support remote access 
        capabilities, including termination reason, authentication
        protocol, option negotiation status."
        REVISION      "9801010000Z"
        DESCRIPTION
                "Initial version of this MIB module."
        ::= { rsMgmt 11 }

-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- Textual conventions
-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

RsPppAuthentication ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "Specifies the type(s) of PPP authentication used, if any:

        none        No authentication is negotiated.
        pap         PAP negotiation only.
        chap        CHAP negotiation only.
        papChap     PAP negotiation is attempted first; if fails, attempt CHAP.
        chapPap     CHAP negotiation is attempted first; if fails, attempt PAP."
    SYNTAX      INTEGER {
                    none(0),
                    pap(1),
                    chap(2),
                    papChap(3),
                    chapPap(4)
                }

RsPppMlPppBundleName ::= TEXTUAL-CONVENTION
    STATUS      current
    DESCRIPTION
        "MLPPP Bundle name.  The bundle name is a characteristic of a 
        MLPPP network interfac.e"
    SYNTAX OCTET STRING(SIZE(0..32))

-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- Managed objects
-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

rsPppObjects     OBJECT IDENTIFIER ::= { rsPppMIB 1 }

-- 
-- This MIB contains managed objects for PPP interfaces.
-- Management objects are provided to query for an available
-- interface index, and to create/delete interfaces of this type.
-- Creating/deleting this interface type using this MIB has
-- the side effect of creating/deleting corresponding entries
-- in the Interface MIB ifTable/ifXTable, and in the Redstone
-- Enterprise Interface MIB rsIfTable.
--
-- This MIB acts as a supplement to IETF MIBs RFC1471 PPP-LCP-MIB
-- and RFC1473 PPP-IP-NCP-MIB.
--

--
-- MIB object definitions are organized into the following 
-- functional sections:
--

rsPppLcp        OBJECT IDENTIFIER   ::= { rsPppObjects 1 }
rsPppSec        OBJECT IDENTIFIER   ::= { rsPppObjects 2 }     -- reserved 
rsPppIp         OBJECT IDENTIFIER   ::= { rsPppObjects 3 }
rsPppOsi        OBJECT IDENTIFIER   ::= { rsPppObjects 4 }
rsPppSession    OBJECT IDENTIFIER   ::= { rsPppObjects 5 }
rsPppMlPpp      OBJECT IDENTIFIER   ::= { rsPppObjects 6 }
rsPppSummary    OBJECT IDENTIFIER   ::= { rsPppObjects 7 }


-- //////////////////////////////////////////////////////////////////////
--
-- PPP LCP 
--
-- This section defines objects used to manage the PPP Link / LCP
-- layer of PPP.
--
-- The rsPppLinkStatusTable complements RFC1472 pppLinkStatusTable,
-- providing status indications regarding the operation
-- of network protocols over each link. The addition/removal of a
-- network protocol service is accomplished outside this MIB.
--
-- The rsPppLinkConfigTable complements RFC1471 pppLinkConfigTable,
-- providing the ability to create/delete instances of PPP links
-- and providing for configuration of option parameter values (if any)
-- not found in the standard MIB, to be used during LCP negotiation.
--
-- //////////////////////////////////////////////////////////////////////

--
-- The PPP Link Status Table
--

rsPppLinkStatusTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF RsPppLinkStatusEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table contains entries for PPP interfaces present in the system."
    ::= { rsPppLcp 1 }

rsPppLinkStatusEntry OBJECT-TYPE
    SYNTAX      RsPppLinkStatusEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each entry describes the characteristics of a PPP interface."
    INDEX   { ifIndex }
    ::= { rsPppLinkStatusTable 1 }

RsPppLinkStatusEntry ::= SEQUENCE {
    rsPppLinkStatusTerminateReason
        INTEGER,
    rsPppLinkStatusTerminateNegFailOption
        INTEGER,
    rsPppLinkStatusInKeepaliveRequests
        Counter32,
    rsPppLinkStatusOutKeepaliveRequests
        Counter32,
    rsPppLinkStatusInKeepaliveReplies
        Counter32,
    rsPppLinkStatusOutKeepaliveReplies
        Counter32,
    rsPppLinkStatusKeepaliveFailures
        Counter32,
    rsPppLinkStatusLocalMagicNumber
        Integer32,
    rsPppLinkStatusRemoteMagicNumber
        Integer32,
    rsPppLinkStatusLocalAuthentication
        RsPppAuthentication,
    rsPppLinkStatusTunnelIfIndex
        InterfaceIndexOrZero
    }

rsPppLinkStatusTerminateReason OBJECT-TYPE
    SYNTAX      INTEGER {
                    none(0),
                    other(1),
                    adminDisable(2),
                    lowerLayerDown(3),
                    noUpperInterface(4),
                    authenticationFailure(5),
                    peerTerminated(6),
                    peerRenegotiated(7),
                    maxRetriesExceeded(8),
                    negotiationFailure(9),
                    keepaliveFailure(10),
                    sessionTimeout(11),
                    inactivityTimeout(12),
                    addressLeaseExpired(13),
                    adminLogout(14),
                    tunnelFailed(15),
                    tunnelDisconnected(16),
                    loopback(17)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Reason the PPP link was terminated:

        none                            None.
        other                           Not specified.
        adminDisable                    Interface administratively disabled.
        lowerLayerDown                  Underlying interface is down.
        noUpperInterface                No interface above PPP.
        authenticationFailure           Authentication failed.
        peerTerminated                  Peer initiated termination.
        peerRenegotiated                Peer initiated renegotiation.
        maxRetriesExceeded              Maximum number of config retries exceeded.
        negotiationFailure              Failed to negotiate LCP option. See
                                        rsPppLinkStatusTerminateNegFailOption.
        keepaliveFailure                Keepalive failed.
        sessionTimeout                  Maximum session period expired.
        inactivityTimeout               Maximum inactivity period expired.
        addressLeaseExpired             Lease for network address expired.
        adminLogout                     Session administratively terminated.
        tunnelFailed                    Associated tunnel failed.
        tunnelDisconnected              Associated tunnel disconnected.
        loopback                        Loopback detected."
    ::= { rsPppLinkStatusEntry 1 }

rsPppLinkStatusTerminateNegFailOption OBJECT-TYPE
    SYNTAX      INTEGER {
                    none(0),
                    other(1),
                    localMru(2),
                    remoteMru(3),
                    localMagicNumber(4),
                    remoteMagicNumber(5),
                    localAuthentication(6),
                    localToRemoteProtocolCompression(7),
                    localToRemoteACCompression(8)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Reports the PPP LCP option for which negotiation failed,
        when rsPppLinkStatusTerminateReason has the value
        'negotiationFailure'."
    ::= { rsPppLinkStatusEntry 2 }

rsPppLinkStatusInKeepaliveRequests OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of keepalive requests received."
    ::= { rsPppLinkStatusEntry 3 }

rsPppLinkStatusOutKeepaliveRequests OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of keepalive requests transmitted."
    ::= { rsPppLinkStatusEntry 4 }

rsPppLinkStatusInKeepaliveReplies OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of keepalive replies received."
    ::= { rsPppLinkStatusEntry 5 }

rsPppLinkStatusOutKeepaliveReplies OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of keepalive replies transmitted."
    ::= { rsPppLinkStatusEntry 6 }

rsPppLinkStatusKeepaliveFailures OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of keepalive failures detected."
    ::= { rsPppLinkStatusEntry 7 }

rsPppLinkStatusLocalMagicNumber OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Magic number negotiated for the local side."
    ::= { rsPppLinkStatusEntry 8 }

rsPppLinkStatusRemoteMagicNumber OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Magic number negotiated for the remote side."
    ::= { rsPppLinkStatusEntry 9 }

rsPppLinkStatusLocalAuthentication OBJECT-TYPE
    SYNTAX      RsPppAuthentication
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Authentication protocol negotiated for the local side."
    ::= { rsPppLinkStatusEntry 10 }

rsPppLinkStatusTunnelIfIndex OBJECT-TYPE
    SYNTAX      InterfaceIndexOrZero
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The ifIndex of an associated interface pertaining to
        a tunneling protocol, or zero if no such interface exists.

        The type of tunneling interface can be identified from 
        information in the entries in ifTable and rsIfTable for
        this tunnel interface."
    ::= { rsPppLinkStatusEntry 11 }

--
-- The PPP Link Configuration Table
--

rsPppLinkConfigTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF RsPppLinkConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table contains entries for PPP interfaces present in the system."
    ::= { rsPppLcp 2 }

rsPppLinkConfigEntry OBJECT-TYPE
    SYNTAX      RsPppLinkConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each entry describes the characteristics of a PPP interface. 
        Creating/deleting entries in this table causes corresponding 
        entries for be created /deleted in ifTable/ifXTable/rsIfTable."
    INDEX   { rsPppLinkConfigIfIndex }
    ::= { rsPppLinkConfigTable 1 }

RsPppLinkConfigEntry ::= SEQUENCE {
    rsPppLinkConfigIfIndex
        InterfaceIndex,
    rsPppLinkConfigRowStatus
        RowStatus,
    rsPppLinkConfigLowerIfIndex
        InterfaceIndexOrZero,
    rsPppLinkConfigKeepalive
        Integer32,
    rsPppLinkConfigAuthentication
        RsPppAuthentication,
    rsPppLinkConfigMaxAuthenRetries
        Integer32,
    rsPppLinkConfigStandardIfIndex
       InterfaceIndex
    }


rsPppLinkConfigIfIndex OBJECT-TYPE
    SYNTAX      InterfaceIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The ifIndex of the PPP interface. When 
        creating entries in this table, suitable values
        for this object are determined by reading
        rsPppNextIfIndex."
    ::= { rsPppLinkConfigEntry 1 }

rsPppLinkConfigRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Controls creation/deletion of entries in this table
        according to the RowStatus textual convention, 
        constrained to support the following values only:

            createAndGo
            destroy
            
        To create an entry in this table, the following 
        entry objects MUST be explicitly configured:

            rsPppLinkConfigRowStatus
            rsPppLinkConfigLowerIfIndex

        In addition, when creating an entry the following
        conditions must hold:

            A value for rsPppLinkConfigIndex must have been determined
            previously, by reading rsPppNextIfIndex. 

            The interface identified by rsPppLinkConfigLowerIfIndex
            must exist.

        A corresponding entry in ifTable/ifXTable/rsIfTable is 
        created/destroyed as a result of creating/destroying an entry 
        in this table.
        "
    ::= { rsPppLinkConfigEntry 2 }

rsPppLinkConfigLowerIfIndex OBJECT-TYPE
    SYNTAX      InterfaceIndexOrZero
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The ifIndex of an interface over which this PPP interface 
        is to be layered. A value of zero indicates no layering.
        An implementation may choose to require that a nonzero value
        be configured at entry creation."
    ::= { rsPppLinkConfigEntry 3 }

rsPppLinkConfigKeepalive OBJECT-TYPE
    SYNTAX      Integer32(0 | 30..300)
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Keepalive interval in seconds. A value of zero disables keepalive.
        Keepalive is performed using LCP Echo."
    DEFVAL { 30 }
    ::= { rsPppLinkConfigEntry 4 }

rsPppLinkConfigAuthentication OBJECT-TYPE
    SYNTAX      RsPppAuthentication
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Specifies the type(s) of authentication, if any, to be negotiated
        with the peer:

        none        No authentication is negotiated.
        pap         PAP negotiation only.
        chap        CHAP negotiation only.
        papChap     PAP negotiation is attempted first; if fails, attempt CHAP.
        chapPap     CHAP negotiation is attempted first; if fails, attempt PAP."
    DEFVAL { none }
    ::= { rsPppLinkConfigEntry 5 }

rsPppLinkConfigMaxAuthenRetries OBJECT-TYPE
    SYNTAX      Integer32(0..7)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The number of authentication retries permitted, in addition
        to a failed initial attempt. If all retries fail, the link is reset."
    DEFVAL { 0 }
    ::= { rsPppLinkConfigEntry 6 }

rsPppLinkConfigStandardIfIndex OBJECT-TYPE
    SYNTAX      InterfaceIndex
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The ifIndex value for this interface in the standard PPP mibs.
         The ifIndex value for PPP interfaces is not the same for both
         proprietary and standard MIB tables pertaining to PPP interface.
         Therefore this value is provide to simply cross referencing
         standard PPP and proprietary PPP MIB information."
    ::= { rsPppLinkConfigEntry 7 }

--
-- IfIndex selection for creating new PPP interfaces
-- in rsPppLinkConfigTable.
--
-- NOTE: This object is placed after rsPppLinkConfigTable so 
-- that rsPppLinkStatusTable and rsPppLinkConfigTable have the
-- same relative MIB node positions below the rsPppLcp node 
-- (rsPppLcp.1 and rsPppLcp.2, respectively) as their counterpart
-- Status and Config tables in RFC1471.
--

rsPppNextIfIndex OBJECT-TYPE
    SYNTAX      RsNextIfIndex
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Coordinate ifIndex value allocation for entries
        in rsPppLinkConfigTable.

        A GET of this object returns the next available ifIndex 
        value to be used to create an entry in the associated
        interface table; or zero, if no valid ifIndex value is
        available. This object also returns a value of zero when 
        it is the lexicographic successor of a varbind presented 
        in an SNMP GETNEXT or GETBULK request, for which circumstance
        it is assumed that ifIndex allocation is unintended.

        Successive GETs will typically return different
        values, thus avoiding collisions among cooperating
        management clients seeking to create table entries
        simultaneously."
    ::= { rsPppLcp 3 }

-- //////////////////////////////////////////////////////////////////////
--
-- PPP Security
--
-- This section defines objects used to manage the PPP Security
-- functionality of PPP.
--
-- //////////////////////////////////////////////////////////////////////

-- No objects are currently defined.



-- //////////////////////////////////////////////////////////////////////
--
-- PPP IP NCP
--
-- This section defines objects used to manage the PPP Network
-- Control Protocol for IP protocol operation (IPCP).
--
-- //////////////////////////////////////////////////////////////////////

--
-- The PPP IP Table
--

rsPppIpTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF RsPppIpEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Table containing the IP parameters for the local PPP entity."
    ::= { rsPppIp 1 }

rsPppIpEntry OBJECT-TYPE
    SYNTAX      RsPppIpEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "IPCP status information for a particular PPP link."
    INDEX   { ifIndex }
    ::= { rsPppIpTable 1 }

RsPppIpEntry ::= SEQUENCE {
    rsPppIpServiceStatus
        RsEnable,
    rsPppIpTerminateReason
        INTEGER,
    rsPppIpTerminateNegFailOption
        INTEGER,
    rsPppIpLocalIpAddress
        IpAddress,
    rsPppIpRemoteIpAddress
        IpAddress,
    rsPppIpRemotePrimaryDnsAddress
        IpAddress,
    rsPppIpRemoteSecondaryDnsAddress
        IpAddress,
    rsPppIpRemotePrimaryWinsAddress
        IpAddress,
    rsPppIpRemoteSecondaryWinsAddress
        IpAddress
    }

rsPppIpServiceStatus OBJECT-TYPE
    SYNTAX      RsEnable
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Indicates whether IP protocol service is operating over this 
        PPP link. Service is established on this link through means outside
        this MIB."
    ::= { rsPppIpEntry 1 }

rsPppIpTerminateReason OBJECT-TYPE
    SYNTAX      INTEGER {
                    none(0),
                    other(1),
                    noService(2),
                    admin(3),
                    linkDown(4),
                    peerTerminated(5),
                    peerRenegotiated(6),
                    maxRetriesExceeded(7),
                    negotiationFailure(8)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Reason the IPCP link was terminated:

        none                            None.
        other                           Not specified.
        noService                       No IP service configured on this PPP link.
        admin                           Administratively disabled.
        linkDown                        Underlying link is down.
        peerTerminated                  Peer initiated termination.
        peerRenegotiated                Peer initiated renegotiation.
        maxRetriesExceeded              Maximum number of config retries exceeded.
        negotiationFailure              Failed to negotiate IPCP option. See
                                        rsPppIpTerminateNegFailOption."
    ::= { rsPppIpEntry 2 }

rsPppIpTerminateNegFailOption OBJECT-TYPE
    SYNTAX      INTEGER {
                    none(0),
                    other(1),
                    localIpAddress(2),
                    remoteIpAddress(3),
                    remotePrimaryDnsAddress(4),
                    remoteSecondaryDnsAddress(5),
                    remotePrimaryWinsAddress(6),
                    remoteSecondaryWinsAddress(7)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Reports the PPP IPCP option for which negotiation failed,
        when rsPppIpTerminateReason has the value 'negotiationFailure'."
    ::= { rsPppIpEntry 3 }

rsPppIpLocalIpAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "IP Address used by the local side."
    ::= { rsPppIpEntry 4 }

rsPppIpRemoteIpAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "IP Address used by the remote side."
    ::= { rsPppIpEntry 5 }

rsPppIpRemotePrimaryDnsAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Primary DNS server used by the remote side."
    ::= { rsPppIpEntry 6 }

rsPppIpRemoteSecondaryDnsAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Secondary DNS server used by the remote side."
    ::= { rsPppIpEntry 7 }

rsPppIpRemotePrimaryWinsAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Primary WINS server used by the remote side."
    ::= { rsPppIpEntry 8 }

rsPppIpRemoteSecondaryWinsAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Secondary WINS server used by the remote side."
    ::= { rsPppIpEntry 9 }

--
-- The PPP IP Config Table
--

rsPppIpConfigTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF RsPppIpConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Table containing the IP parameters for the local PPP entity."
    ::= { rsPppIp 2 }

rsPppIpConfigEntry OBJECT-TYPE
    SYNTAX      RsPppIpConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "IPCP configuration information for a particular PPP link."
    INDEX   { ifIndex }
    ::= { rsPppIpConfigTable 1 }

RsPppIpConfigEntry ::= SEQUENCE {
    rsPppIpConfigPeerDnsPriority
        RsEnable,
    rsPppIpConfigPeerWinsPriority
        RsEnable
    }

rsPppIpConfigPeerDnsPriority OBJECT-TYPE
    SYNTAX      RsEnable
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "When enabled, allows peer's DNS address to prevail in the
         event of a negotiation conflict; when disabled, the local PPP
         interface's DNS address prevails."
    ::= { rsPppIpConfigEntry 1 }

rsPppIpConfigPeerWinsPriority OBJECT-TYPE
    SYNTAX      RsEnable
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "When enabled, allows peer's WINS address to prevail in the
         event of a negotiation conflict; when disabled, the local PPP
         interface's WINS address prevails."
    ::= { rsPppIpConfigEntry 2 }


-- //////////////////////////////////////////////////////////////////////
--
-- PPP OSI NCP
--
-- This section defines objects used to manage the PPP Network
-- Control Protocol for OSI protocol operation (OSICP).
--
-- The IETF does not define a standard MIB for managing an OSI NCP.
-- For consistency, this MIB follows the model of RFC1473 for IP NCP:
-- A status table reports the condition of the NCP state machine, and
-- the outcome of option parameter negotiation (if any) when the 
-- OperStatus object has the value 'opened(1)'; a configuration table
-- provides administrative control over the NCP state machine, and 
-- permits configuration of proposed option parameter values (if any)
-- to be used during NCP negotiation.
--
-- //////////////////////////////////////////////////////////////////////

--
-- PPP OSI Status Table
--

rsPppOsiTable   OBJECT-TYPE
    SYNTAX      SEQUENCE OF RsPppOsiEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Table containing the OSI parameters for the local PPP entity."
    ::= { rsPppOsi 1 }


rsPppOsiEntry   OBJECT-TYPE
    SYNTAX      RsPppOsiEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "OSICP status information for a particular PPP link."
    INDEX       { ifIndex }
    ::= { rsPppOsiTable 1 }


RsPppOsiEntry ::= SEQUENCE {
    rsPppOsiServiceStatus
        RsEnable,
    rsPppOsiOperStatus
        INTEGER,
    rsPppOsiTerminateReason
        INTEGER,
    rsPppOsiTerminateNegFailOption
        INTEGER,
    rsPppOsiLocalAlignNpdu
        INTEGER,
    rsPppOsiRemoteAlignNpdu
        INTEGER
}

rsPppOsiServiceStatus OBJECT-TYPE
    SYNTAX      RsEnable
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Indicates whether OSI protocol service is operating over this
        PPP link. Service is established on this link through means outside
        this MIB."
    ::= { rsPppOsiEntry 1 }

rsPppOsiOperStatus   OBJECT-TYPE
    SYNTAX      INTEGER {opened(1), not-opened(2)}
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The operational status of the OSI network
        protocol. If the value of this object is up
        then the finite state machine for the OSI
        network protocol has reached the Opened state."
    ::= { rsPppOsiEntry 2 }

rsPppOsiTerminateReason   OBJECT-TYPE
    SYNTAX      INTEGER {
                    none(0),
                    other(1),
                    noService(2),
                    admin(3),
                    linkDown(4),
                    peerTerminated(5),
                    peerRenegotiated(6),
                    maxRetriesExceeded(7),
                    negotiationFailure(8)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Reason the OSICP link was terminated:

        none                            None.
        other                           Not specified.
        noService                       No OSI service configured on this PPP link.
        admin                           Administratively disabled.
        linkDown                        Underlying link is down.
        peerTerminated                  Peer initiated termination.
        peerRenegotiated                Peer initiated renegotiation.
        maxRetriesExceeded              Maximum number of config retries exceeded.
        negotiationFailure              Failed to negotiate IPCP option. See
                                        rsPppOsiTerminateNegFailOption."
    ::= { rsPppOsiEntry 3 }

rsPppOsiTerminateNegFailOption   OBJECT-TYPE
    SYNTAX      INTEGER {
                    none(0),
                    other(1),
                    localAlignNpdu(2),
                    remoteAlignNpdu(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Reports the PPP OSICP option for which negotiation failed,
        when rsPppOsiTerminateReason has the value 'negotiationFailure'."
    ::= { rsPppOsiEntry 4 }

rsPppOsiLocalAlignNpdu   OBJECT-TYPE
    SYNTAX      INTEGER {
                    none(0),
                    oneModulo4(1),
                    twoModulo4(2),
                    threeModulo4(3),
                    fourModulo4(4),
                    even(254),
                    odd(255)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Local alignment of network PDU:

        none                No alignment specified.
        oneModulo4          Alignment on first octet (out of four).
        twoModulo4          Alignment on second octet (out of four).
        threeModulo4        Alignment on third octet (out of four).
        fourModulo4         Alignment on fourth octet (out of four).
        even                Alignment on even-octet boundary.
        odd                 Alignment on odd-octet boundary."
    ::= { rsPppOsiEntry 5 }

rsPppOsiRemoteAlignNpdu   OBJECT-TYPE
    SYNTAX      INTEGER {
                    none(0),
                    oneModulo4(1),
                    twoModulo4(2),
                    threeModulo4(3),
                    fourModulo4(4),
                    even(254),
                    odd(255)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Remote alignment of network PDU.

        none                No alignment specified.
        oneModulo4          Alignment on first octet (out of four).
        twoModulo4          Alignment on second octet (out of four).
        threeModulo4        Alignment on third octet (out of four).
        fourModulo4         Alignment on fourth octet (out of four).
        even                Alignment on even-octet boundary.
        odd                 Alignment on odd-octet boundary."
    ::= { rsPppOsiEntry 6 }


--
-- The PPP OSI Configuration Table
--
rsPppOsiConfigTable   OBJECT-TYPE
    SYNTAX      SEQUENCE OF RsPppOsiConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Table containing configuration variables for
        the OSICP for the local PPP entity."
    ::= { rsPppOsi 2 }


rsPppOsiConfigEntry   OBJECT-TYPE
    SYNTAX      RsPppOsiConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "OSICP information for a particular PPP link."
    INDEX   { ifIndex }
    ::= { rsPppOsiConfigTable 1 }


RsPppOsiConfigEntry ::= SEQUENCE {
    rsPppOsiConfigAdminStatus
        INTEGER
}

rsPppOsiConfigAdminStatus   OBJECT-TYPE
    SYNTAX      INTEGER {open(1), close(2)}
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The immediate desired status of the OSI network
        protocol. Setting this object to open will
        inject an administrative open event into the OSI
        network protocol's finite state machine.
        Setting this object to close will inject an
        administrative close event into the OSI network
        protocol's finite state machine."
    ::= { rsPppOsiConfigEntry 1 }


-- //////////////////////////////////////////////////////////////////////
--
-- PPP Session
--
-- This section defines objects used to manage the PPP sessions.
--
-- The rsPppSessionTable provides status of each PPP session.
--
-- //////////////////////////////////////////////////////////////////////

--
-- The PPP Session Table
--

rsPppSessionTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF RsPppSessionEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table contains entries for PPP interfaces present in the system."
    ::= { rsPppSession 1 }

rsPppSessionEntry OBJECT-TYPE
    SYNTAX      RsPppSessionEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each entry describes the characteristics of a PPP interface."
    INDEX   { ifIndex }
    ::= { rsPppSessionTable 1 }

RsPppSessionEntry ::= SEQUENCE {
    rsPppSessionGrant
        TruthValue,
    rsPppSessionTerminateReason
        INTEGER,
    rsPppSessionStartTime
        TimeTicks,
    rsPppSessionInOctets
        Counter32,
    rsPppSessionOutOctets
        Counter32,
    rsPppSessionInPackets
        Counter32,
    rsPppSessionOutPackets
        Counter32,
    rsPppSessionSessionTimeout
        Integer32,
    rsPppSessionInactivityTimeout
        Integer32,
    rsPppSessionAccountingInterval
        Integer32,
    rsPppSessionRemoteIpAddress
        IpAddress,
    rsPppSessionRemotePrimaryDnsAddress
        IpAddress,
    rsPppSessionRemoteSecondaryDnsAddress
        IpAddress,
    rsPppSessionRemotePrimaryWinsAddress
        IpAddress,
    rsPppSessionRemoteSecondaryWinsAddress
        IpAddress
    }

rsPppSessionGrant OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Indicates whether a session has been granted via
        the authentication mechanism."
    ::= { rsPppSessionEntry 1 }

rsPppSessionTerminateReason OBJECT-TYPE
    SYNTAX      INTEGER {
                    none(0),
                    unknown(1),
                    userRequest(2),
                    keepaliveFailure(3),
                    sessionTimeout(4),
                    inactivityTimeout(5),
                    adminDisable(6),
                    lowerLayerDown(7),
                    noUpperInterface(8),
                    deny(9),
                    noHardware(10),
                    noResources(11),
                    noInterface(12),
                    challengeTimeout(13),
                    requestTimeout(14),
                    authenticatorTimeout(15),
                    addressLeaseExpired(16),
                    adminLogout(17),
                    tunnelFailed(18)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The reason the session was terminated."
    ::= { rsPppSessionEntry 2 }

rsPppSessionStartTime OBJECT-TYPE
    SYNTAX      TimeTicks
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of sysUpTime when this session last became active."
    ::= { rsPppSessionEntry 3 }

rsPppSessionInOctets OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of octets received since this session last became active,
        as denoted by rsPppSessionStartTime."
    ::= { rsPppSessionEntry 4 }

rsPppSessionOutOctets OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of octets sent since this session last became active,
        as denoted by rsPppSessionStartTime."
    ::= { rsPppSessionEntry 5 }

rsPppSessionInPackets OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of packets received since this session last became active,
        as denoted by rsPppSessionStartTime."
    ::= { rsPppSessionEntry 6 }

rsPppSessionOutPackets OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of packets sent since this session last became active,
        as denoted by rsPppSessionStartTime."
    ::= { rsPppSessionEntry 7 }

rsPppSessionSessionTimeout OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "milliseconds"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Maximum duration for the session, after which the
        session terminates automatically."
    ::= { rsPppSessionEntry 8 }

rsPppSessionInactivityTimeout OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "milliseconds"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Maximum inactivity duration for the session, after
        which the session terminates automatically."
    ::= { rsPppSessionEntry 9 }

rsPppSessionAccountingInterval OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "milliseconds"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interval that must elapse between generation of 
        accounting records for this session."
    ::= { rsPppSessionEntry 10 }

rsPppSessionRemoteIpAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Remote IP address, obtained from the authentication
        service, to be used during IPCP negotiation with the remote side."
    ::= { rsPppSessionEntry 11 }

rsPppSessionRemotePrimaryDnsAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Remote primary DNS IP address, obtained from the authentication
        service, to be used during IPCP negotiation with the remote side."
    ::= { rsPppSessionEntry 12 }

rsPppSessionRemoteSecondaryDnsAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Remote secondary DNS IP address, obtained from the authentication
        service, to be used during IPCP negotiation with the remote side."
    ::= { rsPppSessionEntry 13 }

rsPppSessionRemotePrimaryWinsAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Remote primary WINS IP address, obtained from the authentication
        service, to be used during IPCP negotiation with the remote side."
    ::= { rsPppSessionEntry 14 }

rsPppSessionRemoteSecondaryWinsAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Remote secondary WINS IP address, obtained from the authentication
        service, to be used during IPCP negotiation with the remote side."
    ::= { rsPppSessionEntry 15 }



-- //////////////////////////////////////////////////////////////////////
--
-- Multi-Link PPP  (MLPPP)
--
-- This section defines objects used to manage the MLPPP.
--
-- //////////////////////////////////////////////////////////////////////

--
-- The MLPPP BundleTable
--

rsPppMlPppBundleTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF RsPppMlPppBundleEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table contains entries for MLPPP bundles present in the system."
    ::= { rsPppMlPpp 1 }

rsPppMlPppBundleEntry OBJECT-TYPE
    SYNTAX      RsPppMlPppBundleEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each entry describes the characteristics of a MLPPP bundle"
    INDEX   { rsPppMlPppBundleName }
    ::= { rsPppMlPppBundleTable 1 }

RsPppMlPppBundleEntry ::= SEQUENCE {
    rsPppMlPppBundleName
        RsPppMlPppBundleName,
    rsPppMlPppBundleRowStatus
        RowStatus
    }

rsPppMlPppBundleName OBJECT-TYPE
    SYNTAX      RsPppMlPppBundleName 
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The administrative name of the MLPPP bundle associated with this MLPPP
         network interface."
    ::= { rsPppMlPppBundleEntry 1 }

rsPppMlPppBundleRowStatus OBJECT-TYPE
    SYNTAX      RowStatus 
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The rowStatus for this entry.  The following sets are supported:
          
             createAndGo(4),
             destroy(6)
         
         The following values can be read from this object:
             active(1)"
    ::= { rsPppMlPppBundleEntry 2 }


--
-- IfIndex selection for creating new MLPPP Link interfaces
-- in rsPppLinkConfigTable.
--
-- NOTE: This object is placed after rsPppLinkConfigTable so 
-- that rsPppLinkStatusTable and rsPppLinkConfigTable have the
-- same relative MIB node positions below the rsPppLcp node 
-- (rsPppLcp.1 and rsPppLcp.2, respectively) as their counterpart
-- Status and Config tables in RFC1471.
--

rsPppMlPppNextLinkIfIndex OBJECT-TYPE
    SYNTAX      RsNextIfIndex
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Coordinate ifIndex value allocation for entries
        in rsPppMlPppLinkConfigTable.

        A GET of this object returns the next available ifIndex 
        value to be used to create an entry in the associated
        interface table; or zero, if no valid ifIndex value is
        available. This object also returns a value of zero when 
        it is the lexicographic successor of a varbind presented 
        in an SNMP GETNEXT or GETBULK request, for which circumstance
        it is assumed that ifIndex allocation is unintended.

        Successive GETs will typically return different
        values, thus avoiding collisions among cooperating
        management clients seeking to create table entries
        simultaneously."
    ::= { rsPppMlPpp 2 }

--
-- The MLPPP Link Configuration Table
--

rsPppMlPppLinkConfigTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF RsPppMlPppLinkConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table contains entries for MLPPP interfaces present in the
         system."
    ::= { rsPppMlPpp 3 }

rsPppMlPppLinkConfigEntry OBJECT-TYPE
    SYNTAX      RsPppMlPppLinkConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each entry describes the characteristics of MLPPP interface. 
        Creating/deleting entries in this table causes corresponding 
        entries for be created/deleted in ifTable/ifXTable/rsIfTable."
    INDEX   { rsPppMlPppLinkConfigIfIndex }
    ::= { rsPppMlPppLinkConfigTable 1 }

RsPppMlPppLinkConfigEntry ::= SEQUENCE {
    rsPppMlPppLinkConfigIfIndex
        InterfaceIndex,
    rsPppMlPppLinkConfigLowerIfIndex
        InterfaceIndexOrZero,
    rsPppMlPppLinkConfigKeepalive
        Integer32,
    rsPppMlPppLinkConfigAuthentication
        RsPppAuthentication,
    rsPppMlPppLinkConfigMaxAuthenRetries
        Integer32,
    rsPppMlPppLinkConfigRowStatus
        RowStatus
    }

rsPppMlPppLinkConfigIfIndex OBJECT-TYPE
    SYNTAX      InterfaceIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The ifIndex of the MLPPP interface. When 
        creating entries in this table, suitable values
        for this object are determined by reading
        rsPppMlPppNextLinkIfIndex."
    ::= { rsPppMlPppLinkConfigEntry 1 }


rsPppMlPppLinkConfigLowerIfIndex OBJECT-TYPE
    SYNTAX      InterfaceIndexOrZero
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The ifIndex of an interface over which this PPP interface 
        is to be layered. A value of zero indicates no layering.
        An implementation may choose to require that a nonzero value
        be configured at entry creation."
    ::= { rsPppMlPppLinkConfigEntry 2 }

rsPppMlPppLinkConfigKeepalive OBJECT-TYPE
    SYNTAX      Integer32(0 | 30..300)
    UNITS       "seconds"
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Keepalive interval in seconds. A value of zero disables keepalive.
        Keepalive is performed using LCP Echo."
    DEFVAL { 30 }
    ::= { rsPppMlPppLinkConfigEntry 4 }

rsPppMlPppLinkConfigAuthentication OBJECT-TYPE
    SYNTAX      RsPppAuthentication
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Specifies the type(s) of authentication, if any, to be negotiated
        with the peer:

        none        No authentication is negotiated.
        pap         PAP negotiation only.
        chap        CHAP negotiation only.
        papChap     PAP negotiation is attempted first; if fails, attempt CHAP.
        chapPap     CHAP negotiation is attempted first; if fails, attempt PAP."
    DEFVAL { none }
    ::= { rsPppMlPppLinkConfigEntry 5 }

rsPppMlPppLinkConfigMaxAuthenRetries OBJECT-TYPE
    SYNTAX      Integer32(0..7)
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The number of authentication retries permitted, in addition
        to a failed initial attempt. If all retries fail, the link is reset."
    DEFVAL { 0 }
    ::= { rsPppMlPppLinkConfigEntry 6 }

rsPppMlPppLinkConfigRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Controls creation/deletion of entries in this table
        according to the RowStatus textual convention, 
        constrained to support the following values only:

            createAndGo
            destroy
            
        To create an entry in this table, the following 
        entry objects MUST be explicitly configured:

            rsPppMlPppLinkConfigRowStatus
            rsPppMlPppLinkConfigLowerIfIndex

        In addition, when creating an entry the following
        conditions must hold:

            A value for rsPppMlPppLinkConfigIndex must have been determined
            previously, by reading rsPppMlPppNextIfIndex. 

            The interface identified by rsPppMlPppLinkConfigLowerIfIndex
            must exist.

        A corresponding entry in ifTable/ifXTable/rsIfTable is 
        created/destroyed as a result of creating/destroying an entry 
        in this table.
        "
    ::= { rsPppMlPppLinkConfigEntry 7 }


rsPppMlPppNextNetworkIfIndex OBJECT-TYPE
    SYNTAX      RsNextIfIndex
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Coordinate ifIndex value allocation for entries
        in rsPppMlPppNetworkConfigTable.

        A GET of this object returns the next available ifIndex 
        value to be used to create an entry in the associated
        interface table; or zero, if no valid ifIndex value is
        available. This object also returns a value of zero when 
        it is the lexicographic successor of a varbind presented 
        in an SNMP GETNEXT or GETBULK request, for which circumstance
        it is assumed that ifIndex allocation is unintended.

        Successive GETs will typically return different
        values, thus avoiding collisions among cooperating
        management clients seeking to create table entries
        simultaneously."
    ::= { rsPppMlPpp 4 }

--
-- The MLPPP Network Configuration Table
--

rsPppMlPppNetworkConfigTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF RsPppMlPppNetworkConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table contains entries for MLPPP network interfaces
         present in the system."
    ::= { rsPppMlPpp 5 }

rsPppMlPppNetworkConfigEntry OBJECT-TYPE
    SYNTAX      RsPppMlPppNetworkConfigEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each entry describes the characteristics of MLPPP interface. 
        Creating/deleting entries in this table causes corresponding 
        entries for be created/deleted in ifTable/ifXTable/rsIfTable."
    INDEX   { rsPppMlPppNetworkConfigIfIndex }
    ::= { rsPppMlPppNetworkConfigTable 1 }

RsPppMlPppNetworkConfigEntry ::= SEQUENCE {
    rsPppMlPppNetworkConfigIfIndex
        InterfaceIndex,
    rsPppMlPppNetworkConfigLowerIfIndex
        InterfaceIndex,
    rsPppMlPppNetworkBundleName
        RsPppMlPppBundleName,
    rsPppMlPppNetworkRowStatus
        RowStatus
}

rsPppMlPppNetworkConfigIfIndex OBJECT-TYPE
    SYNTAX      InterfaceIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The ifIndex of the MLPPP network interface. When 
        creating entries in this table, suitable values
        for this object are determined by reading
        rsPppMlPppNextNetworkIfIndex."
    ::= { rsPppMlPppNetworkConfigEntry 1 }

rsPppMlPppNetworkConfigLowerIfIndex OBJECT-TYPE
    SYNTAX      InterfaceIndex
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "The ifIndex of a PPP link interface over which this PPP 
         network interface is to be layered.  On sets, the value
         of this object must equal on of the previously created
         PPP link interfaces created in the rsPppMlPppLinkConfigTable.
         On gets, the value of this object is the lexicographically
         least PPP link interface in a potential bundle of PPP link
         interfaces."
    ::= { rsPppMlPppNetworkConfigEntry 2 }

rsPppMlPppNetworkBundleName OBJECT-TYPE
    SYNTAX     RsPppMlPppBundleName
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
        "The MLPPP bundle name administratively assigned."
    ::= { rsPppMlPppNetworkConfigEntry 3 }

rsPppMlPppNetworkRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Controls creation/deletion of entries in this table
        according to the RowStatus textual convention, 
        constrained to support the following values only:

            createAndGo
            destroy
            
        To create an entry in this table, the following 
        entry objects MUST be explicitly configured:

            rsPppMlPppNetworkConfigLowerIfIndex
            rsPppMlPppNetworkBundleName
            rsPppMlPppNetworkConfigRowStatus

        In addition, when creating an entry the following
        conditions must hold:

            A value for rsPppMlPppNetworkConfigIndex must have been determined
            previously, by reading rsPppMlPppNextNetworkIfIndex. 

            The interface identified by rsPppMlPppNetworkConfigLowerIfIndex
            must exist by a creation request to the rsPppMlPppLinkConfigTable.

            The bundleName specified in rsPppMlPppNetworkBundleName must have
            been created first in the rsPppMlPppBundleTable.

        A corresponding entry in ifTable/ifXTable/rsIfTable is 
        created/destroyed as a result of creating/destroying an entry 
        in this table.
        "
    ::= { rsPppMlPppNetworkConfigEntry 4 }


--
-- The MLPPP Link Bind Table
--

rsPppMlPppLinkBindTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF RsPppMlPppLinkBindEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table contains entries for MLPPP Link interface to
         MLPPP network interfaces bindings."
    ::= { rsPppMlPpp 6 }

rsPppMlPppLinkBindEntry OBJECT-TYPE
    SYNTAX      RsPppMlPppLinkBindEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each entry describes the MLPPP link interface to
         MLPPP network interface bindings."
    INDEX   { rsPppMlPppBindNetworkIfIndex, rsPppMlPppBindLinkIfIndex }
    ::= { rsPppMlPppLinkBindTable 1 }

RsPppMlPppLinkBindEntry ::= SEQUENCE {
    rsPppMlPppBindNetworkIfIndex
        InterfaceIndex,
    rsPppMlPppBindLinkIfIndex
        InterfaceIndex,
    rsPppMlPppBindRowStatus
        RowStatus
}

rsPppMlPppBindNetworkIfIndex OBJECT-TYPE
    SYNTAX      InterfaceIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The ifIndex of the MLPPP network interface."
    ::= { rsPppMlPppLinkBindEntry 1 }

rsPppMlPppBindLinkIfIndex OBJECT-TYPE
    SYNTAX      InterfaceIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The ifIndex of a MLPPP link interface bound by the MLPPP
         network interface defined by rsPppMlPppBindNetworkIfIndex."
    ::= { rsPppMlPppLinkBindEntry 2 }

rsPppMlPppBindRowStatus OBJECT-TYPE
    SYNTAX      RowStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
        "Controls creation/deletion of entries in this table
        according to the RowStatus textual convention, 
        constrained to support the following values only:

            createAndGo
            destroy
            
        To create an entry in this table, the following 
        entry objects MUST be explicitly configured:

            rsPppMlPppBindRowStatus

        In addition, when creating an entry the following
        conditions must hold:

        The interfaces identified by rsPppMlPppBindNetworkIfIndex and
        rsPppMlPppBindLinkIfIndex must be created in the
        rsPppMlPppNetworkConfigTable and rsPppMlPppLinkConfigTable
        respectively.

        A MLPPP bundle must be associated with the rsPppMlPppNetworkIfIndex
        and exist in the rsPppMibPppBundleTable.

        A corresponding entry in ifStackTable is created/destroyed as
        a result of creating/destroying an entry in this table.
        "
    ::= { rsPppMlPppLinkBindEntry 3 }


-- //////////////////////////////////////////////////////////////////////
--
-- PPP Interface Summary Counts
--
-- //////////////////////////////////////////////////////////////////////

rsPppSummaryPppInterfaceCount OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP interfaces configured in the system."
    ::= { rsPppSummary 1 }

rsPppSummaryPppIpNCPs OBJECT-TYPE 
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number IP NCP's configured in the system."
    ::= { rsPppSummary 2 }

rsPppSummaryPppOsiNCPs OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of OSI NCP's configured in the system."
    ::= { rsPppSummary 3 }

rsPppSummaryPppIfAdminUp OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP interfaces in the system that
         are administratively configured to up(1)."
    REFERENCE
        "ifAdminStatus from IF-MIB"
    ::= { rsPppSummary 4 }

rsPppSummaryPppIfAdminDown OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP interfaces in the system that
         are administrateively configued to down(2)."
    REFERENCE
        "ifAdminStatus from IF-MIB"
    ::= { rsPppSummary 5 }

rsPppSummaryPppIfOperUp OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP interfaces in the system with an
         operational state of up(1)."
    REFERENCE
        "ifOperStatus from IF-MIB"
    ::= { rsPppSummary 7 }

rsPppSummaryPppIfOperDown OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP interfaces in the system with an
         operational state of down(2)."
    REFERENCE
        "ifOperStatus from IF-MIB"
    ::= { rsPppSummary 8 }

rsPppSummaryPppIfOperDormant OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP interfaces in the system with an
         operational state of dormant(5)."
    REFERENCE
        "ifOperStatus from IF-MIB"
    ::= { rsPppSummary 9 }

rsPppSummaryPppIfNotPresent OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP interfaces in the system with an
         operational state of notPresent(6)."
    REFERENCE
        "ifOperStatus from IF-MIB"
    ::= { rsPppSummary 10 }

rsPppSummaryPppIfLowerLayerDown OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP interfaces in the system with an
         operational state of lowerLayerDown(7)."
    REFERENCE
        "ifOperStatus from IF-MIB"
    ::= { rsPppSummary 11 }

rsPppSummaryPppIpNcpOpened OBJECT-TYPE 
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP IP NCPs in the system with an
         operational state of opened"
    ::= { rsPppSummary 12 }

rsPppSummaryPppIpNcpClosed OBJECT-TYPE 
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP IP NCP's in the system with an
         operational state of closed."
    REFERENCE
        "ifOperStatus from IF-MIB"
    ::= { rsPppSummary 13 }

rsPppSummaryPppOsiNcpOpened OBJECT-TYPE 
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP OSI NCP's in the system with an
         operational state of opened."
    ::= { rsPppSummary 14 }

rsPppSummaryPppOsiNcpClosed OBJECT-TYPE 
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP OSI NCP's in the system with an
         operational state of closed."
    ::= { rsPppSummary 15 }

rsPppSummaryPppIfLastChangeTime OBJECT-TYPE
    SYNTAX      TimeTicks 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the sysUpTime at the time of the last
        PPP interface creation or deletion in the system.  If
        the number of PPP interfaces has been unchanged since
        the last re-initialization of the system, then this
        object contains a zero value. "
    ::= { rsPppSummary 16}

rsPppSummaryPppLinkInterfaceCount OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP Link interfaces configured in the system."
    ::= { rsPppSummary 17 }

rsPppSummaryPppLinkIfAdminUp OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP Link interfaces in the system that
         are administratively configured to up(1)."
    REFERENCE
        "ifAdminStatus from IF-MIB"
    ::= { rsPppSummary 18 }

rsPppSummaryPppLinkIfAdminDown OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP Link interfaces in the system that
         are administrateively configued to down(2)."
    REFERENCE
        "ifAdminStatus from IF-MIB"
    ::= { rsPppSummary 19 }

rsPppSummaryPppLinkIfOperUp OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP Link interfaces in the system with an
         operational state of up(1)."
    REFERENCE
        "ifOperStatus from IF-MIB"
    ::= { rsPppSummary 20 }

rsPppSummaryPppLinkIfOperDown OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP Link interfaces in the system with an
         operational state of down(2)."
    REFERENCE
        "ifOperStatus from IF-MIB"
    ::= { rsPppSummary 21 }

rsPppSummaryPppLinkIfOperDormant OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP Link interfaces in the system with an
         operational state of dormant(5)."
    REFERENCE
        "ifOperStatus from IF-MIB"
    ::= { rsPppSummary 22 }

rsPppSummaryPppLinkIfNotPresent OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP link interfaces in the system with an
         operational state of notPresent(6)."
    REFERENCE
        "ifOperStatus from IF-MIB"
    ::= { rsPppSummary 23 }

rsPppSummaryPppLinkIfLowerLayerDown OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP Link interfaces in the system with an
         operational state of lowerLayerDown(7)."
    REFERENCE
        "ifOperStatus from IF-MIB"
    ::= { rsPppSummary 24 }

rsPppSummaryPppLinkIfLastChangeTime OBJECT-TYPE
    SYNTAX      TimeTicks 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the sysUpTime at the time of the last
        PPP Link interface creation or deletion in the system.
        If the number of PPP interfaces has been unchanged since
        the last re-initialization of the system, then this
        object contains a zero value. "
    ::= { rsPppSummary 25}

rsPppSummaryPppNetworkInterfaceCount OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP network interfaces configured
         in the system."
    ::= { rsPppSummary 26 }

rsPppSummaryPppNetworkIpNCPs OBJECT-TYPE 
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number IP NCP's in the system configured on
         PPP network interfaces."
    ::= { rsPppSummary 27 }

rsPppSummaryPppNetworkOsiNCPs OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of OSI NCP's in the system configured on
         PPP network interfaces."
    ::= { rsPppSummary 28 }

rsPppSummaryPppNetworkIfAdminUp OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP network interfaces in the system that
         are administratively configured to up(1)."
    REFERENCE
        "ifAdminStatus from IF-MIB"
    ::= { rsPppSummary 29 }

rsPppSummaryPppNetworkIfAdminDown OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP network interfaces in the system that
         are administrateively configued to down(2)."
    REFERENCE
        "ifAdminStatus from IF-MIB"
    ::= { rsPppSummary 30 }

rsPppSummaryPppNetworkIfOperUp OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP network interfaces in the system with an
         operational state of up(1)."
    REFERENCE
        "ifOperStatus from IF-MIB"
    ::= { rsPppSummary 31 }

rsPppSummaryPppNetworkIfOperDown OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP network interfaces in the system with an
         operational state of down(2)."
    REFERENCE
        "ifOperStatus from IF-MIB"
    ::= { rsPppSummary 32 }

rsPppSummaryPppNetworkIfOperDormant OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP network interfaces in the system with an
         operational state of dormant(5)."
    REFERENCE
        "ifOperStatus from IF-MIB"
    ::= { rsPppSummary 33 }

rsPppSummaryPppNetworkIfNotPresent OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP network interfaces in the system with an
         operational state of notPresent(6)."
    REFERENCE
        "ifOperStatus from IF-MIB"
    ::= { rsPppSummary 34 }

rsPppSummaryPppNetworkIfLowerLayerDown OBJECT-TYPE
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP network interfaces in the system with an
         operational state of lowerLayerDown(7)."
    REFERENCE
        "ifOperStatus from IF-MIB"
    ::= { rsPppSummary 35 }

rsPppSummaryPppNetworkIpNcpOpened OBJECT-TYPE 
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP IP NCP's in the system with an
         operational state of opened."
    ::= { rsPppSummary 36 }

rsPppSummaryPppNetworkIpNcpClosed OBJECT-TYPE 
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP IP NCP's in the system with an
         operational state of closed."
    ::= { rsPppSummary 37 }

rsPppSummaryPppNetworkOsiNcpOpened OBJECT-TYPE 
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP OSI NCP's in the system with an
         operational state of opened."
    ::= { rsPppSummary 38 }

rsPppSummaryPppNetworkOsiNcpClosed OBJECT-TYPE 
    SYNTAX      Integer32 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of PPP OSI NCP's in the system with an
         operational state of closed."
    ::= { rsPppSummary 39 }

rsPppSummaryPppNetworkIfLastChangeTime OBJECT-TYPE
    SYNTAX      TimeTicks 
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the sysUpTime at the time of the last
        PPP network interface creation or deletion in the system.
        If the number of PPP network interfaces has been unchanged since
        the last re-initialization of the system, then this
        object contains a zero value. "
    ::= { rsPppSummary 40}

-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- Notification control objects
-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

-- No notifications are defined in this MIB. Placeholder follows.

-- rsPppTrapControl      OBJECT IDENTIFIER ::= { rsPppMIB 2 }



-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- Notifications
-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

-- No notifications are defined in this MIB. Placeholder follows.

-- The following two OBJECT IDENTIFIERS are used to define SNMPv2 
-- Notifications that are easily translated into SNMPv1 Traps.

-- rsPppTraps            OBJECT IDENTIFIER ::= { rsPppMIB 3 }
-- rsPppTrapPrefix       OBJECT IDENTIFIER ::= { rsPppTraps 0 }



-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- Conformance information
-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

rsPppConformance OBJECT IDENTIFIER ::= { rsPppMIB 4 }
rsPppCompliances OBJECT IDENTIFIER ::= { rsPppConformance 1 }
rsPppGroups      OBJECT IDENTIFIER ::= { rsPppConformance 2 }

-- compliance statements

rsPppCompliance MODULE-COMPLIANCE
        STATUS  current
        DESCRIPTION
                "The compliance statement for entities which implement
                the Redstone PPP MIB."
        MODULE  -- this module
                MANDATORY-GROUPS { rsPppLcpGroup, rsPppIpGroup, rsPppOsiGroup }
        ::= { rsPppCompliances 1 }

rsPppCompliance2 MODULE-COMPLIANCE
        STATUS  current
        DESCRIPTION
                "The compliance statement for entities which implement
                the Redstone PPP MIB."
        MODULE  -- this module
                MANDATORY-GROUPS { rsPppLcpGroup2, rsPppIpGroup2, rsPppOsiGroup2, 
                                   rsPppSessionGroup }
        ::= { rsPppCompliances 2 }

-- units of conformance

rsPppLcpGroup OBJECT-GROUP
    OBJECTS {
                rsPppLinkConfigRowStatus,
                rsPppLinkConfigLowerIfIndex,
                rsPppNextIfIndex,
                rsPppLinkConfigStandardIfIndex 
        }
        STATUS  current
        DESCRIPTION
                "A collection of objects providing management of link-layer
        functionality (LCP) of PPP interfaces in a Redstone product."
    ::= { rsPppGroups 1 }

rsPppIpGroup OBJECT-GROUP
    OBJECTS {
                rsPppIpServiceStatus
        }
        STATUS  current
        DESCRIPTION
                "A collection of objects providing management of IP network
        control protocol functionality (IPCP) of PPP interfaces in 
        a Redstone product."
    ::= { rsPppGroups 2 }

rsPppOsiGroup OBJECT-GROUP
    OBJECTS {
                rsPppOsiServiceStatus,
                rsPppOsiOperStatus,

                rsPppOsiConfigAdminStatus
        }
        STATUS  current
        DESCRIPTION
                "A collection of objects providing management of OSI network
        control protocol functionality (OSICP) of PPP interfaces in 
        a Redstone product."
    ::= { rsPppGroups 3 }

rsPppLcpGroup2 OBJECT-GROUP
    OBJECTS {
        rsPppLinkStatusTerminateReason,
        rsPppLinkStatusTerminateNegFailOption,
        rsPppLinkStatusInKeepaliveRequests,
        rsPppLinkStatusOutKeepaliveRequests,
        rsPppLinkStatusInKeepaliveReplies,
        rsPppLinkStatusOutKeepaliveReplies,
        rsPppLinkStatusKeepaliveFailures,
        rsPppLinkStatusLocalMagicNumber,
        rsPppLinkStatusRemoteMagicNumber,
        rsPppLinkStatusLocalAuthentication,
        rsPppLinkStatusTunnelIfIndex,
        rsPppLinkConfigRowStatus,
        rsPppLinkConfigLowerIfIndex,
        rsPppLinkConfigKeepalive,
        rsPppLinkConfigAuthentication,
        rsPppLinkConfigMaxAuthenRetries,
        rsPppNextIfIndex
        }
        STATUS  current
        DESCRIPTION
                "A collection of objects providing management of link-layer
        functionality (LCP) of PPP interfaces in a Redstone product."
    ::= { rsPppGroups 4 }

rsPppIpGroup2 OBJECT-GROUP
    OBJECTS {
        rsPppIpServiceStatus,
        rsPppIpTerminateReason,
        rsPppIpTerminateNegFailOption,
        rsPppIpRemoteIpAddress,
        rsPppIpRemotePrimaryDnsAddress,
        rsPppIpRemoteSecondaryDnsAddress,
        rsPppIpRemotePrimaryWinsAddress,
        rsPppIpRemoteSecondaryWinsAddress,
        rsPppIpConfigPeerDnsPriority,
        rsPppIpConfigPeerWinsPriority
        }
        STATUS  current
        DESCRIPTION
                "A collection of objects providing management of IP network
        control protocol functionality (IPCP) of PPP interfaces in 
        a Redstone product."
    ::= { rsPppGroups 5 }

rsPppOsiGroup2 OBJECT-GROUP
    OBJECTS {
                rsPppOsiServiceStatus,
                rsPppOsiOperStatus,
        rsPppOsiTerminateReason,
        rsPppOsiTerminateNegFailOption,
        rsPppOsiLocalAlignNpdu,
        rsPppOsiRemoteAlignNpdu,

                rsPppOsiConfigAdminStatus
        }
        STATUS  current
        DESCRIPTION
                "A collection of objects providing management of OSI network
        control protocol functionality (OSICP) of PPP interfaces in 
        a Redstone product."
    ::= { rsPppGroups 6 }


rsPppSessionGroup OBJECT-GROUP
    OBJECTS {
        rsPppSessionGrant,
        rsPppSessionTerminateReason,
        rsPppSessionStartTime,
        rsPppSessionInOctets,
        rsPppSessionOutOctets,
        rsPppSessionInPackets,
        rsPppSessionOutPackets,
        rsPppSessionSessionTimeout,
        rsPppSessionInactivityTimeout,
        rsPppSessionAccountingInterval,
        rsPppSessionRemoteIpAddress,
        rsPppSessionRemotePrimaryDnsAddress,
        rsPppSessionRemoteSecondaryDnsAddress,
        rsPppSessionRemotePrimaryWinsAddress,
        rsPppSessionRemoteSecondaryWinsAddress
    }
        STATUS  current
        DESCRIPTION
                "A collection of objects providing management of PPP
        session functionality of PPP interfaces in 
        a Redstone product."
    ::= { rsPppGroups 7 }

rsPppMlPppGroup OBJECT-GROUP
    OBJECTS {
                rsPppMlPppBundleName,
                rsPppMlPppBundleRowStatus,
                rsPppMlPppNextLinkIfIndex, 
                rsPppMlPppLinkConfigLowerIfIndex,
                rsPppMlPppLinkConfigKeepalive,
                rsPppMlPppLinkConfigAuthentication,
                rsPppMlPppLinkConfigMaxAuthenRetries,
                rsPppMlPppLinkConfigRowStatus,
                rsPppMlPppNextNetworkIfIndex,
                rsPppMlPppNetworkConfigLowerIfIndex,
                rsPppMlPppNetworkBundleName,
                rsPppMlPppNetworkRowStatus,
                rsPppMlPppBindRowStatus
        }
        STATUS  current
        DESCRIPTION
                "A collection of objects providing management of multi link
        PPP management support in a Redstone product."
    ::= { rsPppGroups 8 }

rsPppSummaryGroup OBJECT-GROUP
    OBJECTS {
                rsPppSummaryPppInterfaceCount,
                rsPppSummaryPppIpNCPs,
                rsPppSummaryPppOsiNCPs,
                rsPppSummaryPppIfAdminUp,
                rsPppSummaryPppIfAdminDown,
                rsPppSummaryPppIfOperUp,
                rsPppSummaryPppIfOperDown,
                rsPppSummaryPppIfOperDormant,
                rsPppSummaryPppIfNotPresent,
                rsPppSummaryPppIfLowerLayerDown,
                rsPppSummaryPppIfLastChangeTime,
                rsPppSummaryPppLinkInterfaceCount,
                rsPppSummaryPppLinkIfAdminUp,
                rsPppSummaryPppLinkIfAdminDown,
                rsPppSummaryPppLinkIfOperUp,
                rsPppSummaryPppLinkIfOperDown,
                rsPppSummaryPppLinkIfOperDormant,
                rsPppSummaryPppLinkIfNotPresent,
                rsPppSummaryPppLinkIfLowerLayerDown,
                rsPppSummaryPppLinkIfLastChangeTime,
                rsPppSummaryPppNetworkInterfaceCount,
                rsPppSummaryPppNetworkIpNCPs,
                rsPppSummaryPppNetworkOsiNCPs,
                rsPppSummaryPppNetworkIfAdminUp,
                rsPppSummaryPppNetworkIfAdminDown,
                rsPppSummaryPppNetworkIfOperUp,
                rsPppSummaryPppNetworkIfOperDown,
                rsPppSummaryPppNetworkIfOperDormant,
                rsPppSummaryPppNetworkIfNotPresent,
                rsPppSummaryPppNetworkIfLowerLayerDown,
                rsPppSummaryPppNetworkIfLastChangeTime,
                rsPppSummaryPppIpNcpOpened,
                rsPppSummaryPppIpNcpClosed,
                rsPppSummaryPppOsiNcpOpened,
                rsPppSummaryPppOsiNcpClosed,
                rsPppSummaryPppNetworkIpNcpOpened,
                rsPppSummaryPppNetworkIpNcpClosed,
                rsPppSummaryPppNetworkOsiNcpOpened,
                rsPppSummaryPppNetworkOsiNcpClosed
        }
        STATUS  current
        DESCRIPTION
                "A collection of objects providing PPP interface 
        summary information in a Redstone product."
    ::= { rsPppGroups 9 }
END